查看原文
其他

第十九讲 F检验:两样本方差比较

跟我学 投必得医学 2022-05-07

在“R与生物统计专题”中,我们会从介绍R的基本知识展开到生物统计原理及其在R中的实现。以从浅入深,层层递进的形式在投必得医学公众号更新。


在前面十八讲,我们介绍了R软件在生物统计学中使用入门及组间均数的比较。下面,我们将介绍两组及多组间方差的比较。

F检验

F检验是用于评估两个总体(A和B)的方差(数值间变异程度)是否相等。


1. 什么时候使用F检验?


  • 两样本t检验(第十讲 R-两独立样本t检验时检查两个样本的方差是否相等;

  • 将新的测量方法与旧的测量方法的可变性(变异程度)进行比较。比如,新方法是否减少了措施的可变性,增加的措施的结果稳定性?


2. 研究问题和统计假设


典型的研究问题是:

  1. A组的方差(σ2A)等于 B组的方差(σ2B)?

  2. A组的方差(σ2A)小于 B组的方差(σ2B)?

  3. A组的方差(σ2A)大于 B组的方差(σ2B)?

在统计数据中,我们可以定义相应的原假设(H0H0) 如下:

  1. H0:σ2A = σ2B

  2. H0:σ2A ≤ σ2B

  3. H0:σ2A ≥ σ2B

相应的替代假设(H1)如下:

  1. H1:σ2A ≠ σ2B (不同)

  2. H1:σ2A > σ2B (大于)

  3. H1:σ2A < σ2B (小于)

注意

  • 假设1)称为两向检验

  • 假设2)和3)称为单向检验



3. F检验公式


可以通过计算两个方差(S2A和S2B)之比来获得检验统计量。

分子的自由度是 nA - 1,分母的自由度是nB - 1。


请注意

  • 该比率偏离1的越多,则总体方差不相等的证据就越强。



4. F检验的R实现

4.1 R函数

R函数var.test()可用于比较两个方差,如下所示:

# 方法1var.test(values ~ groups, data,alternative = "two.sided")
# 方法2var.test(x, y, alternative = "two.sided")
  • x,y:数值向量

  • alternative:备择假设。允许值为“two.sided”(默认),“greater”或“less”之一。


4.2 将数据导入R中

在这里,我们将使用名为ToothGrowth的内置R数据集。它包含一项评估维生素C对豚鼠牙齿生长的影响的研究数据。

实验在60只豚鼠上进行,其中每只豚鼠通过两种递送方法(橙汁,OJ,或抗坏血酸,VC)分别接受三种剂量水平的维生素C量(0.5、1和2 mg /天, VC)。实验者测量了牙齿生长的长度,数据示例如下所示。

# 导入R内自带的ToothGrowth数据集library(datasets)data(ToothGrowth)# 将数据存储在变量my_data中my_data <- ToothGrowth


4.3 检查数据

head(my_data)

输出结果

len supp dose1 4.2 VC 0.52 11.5 VC 0.53 7.3 VC 0.54 5.8 VC 0.55 6.4 VC 0.56 10.0 VC 0.5
table(my_data$supp,my_data$dose)

输出结果

0.5 1 2OJ 10 10 10VC 10 10 10

研究问题:我们要在“supp”列中检验长度len在OJ和VC之间的方差是否相等。


4.4  初步检查F检验假设

F检验对于偏离正常假设非常敏感。在使用F检验之前,您需要检查数据是否正态分布(第六讲 R-数据正态分布检验)。

Shapiro-Wilk检验可用于检验正态性假设是否成立。也可以使用QQ图(分位数图)以图形方式评估变量的正态性。QQ图绘制了给定样本与正态分布之间的相关性。

如果对正态性不满足,更好的选择是使用Levene检验Fligner-Killeen检验,它们对偏离正态性的假设这点不太敏感。

以上检验可以参考第六讲和第十五讲(第六讲 R-数据正态分布检验第十五讲 R-单因素方差分析2),我们在下一讲会更加系统的对这几个检验进行详细解说。


4.5 计算F检验


res.ftest <- var.test(len ~ supp, data = my_data)res.ftest

输出结果

F test to compare two variancesdata: len by suppF = 0.6386, num df = 29, denom df = 29, p-value = 0.2331alternative hypothesis: true ratio of variances is not equal to 195 percent confidence interval:0.3039488 1.3416857sample estimates:ratio of variances0.6385951


4.6 结果解释

F检验的P值为p = 0.2331,比显着性水平0.05大。可以得出结论,牙齿长度在OJ和VC两种补充方式之间的方差没有显着差异。


4.7 访问var.test()函数返回的值

函数var.test()返回包含以下组件的列表:

  • statistic:F检验统计量的值。

  • Parameter:检验统计量的F分布的自由度。

  • p.value:检验的p值。

  • conf.int:总体方差比率的置信区间。

  • estimate:样本方差的比率

用于获取这些值的R代码的格式如下:

res.ftest$estimate

ratio of variances

0.6385951

res.ftest$p.value

[1] 0.2331433

好了,本期讲解就先到这里。小伙伴们赶紧试起来吧。

在之后的更新中,我们会进一步为您介绍R的入门,以及常用生物统计方法和R实现。欢迎关注,投必得医学手把手带您走入R和生物统计的世界。
提前打个预告,下一期我们将学习“ 多样本间的方差比较

第一讲 R-基本介绍及安装


第二讲 R-编程基础-运算、数据类型和向量等基本介绍


第三讲 R编程基础-矩阵和数据框


第四讲 R-描述性统计分析


第五讲 R-数据描述性统计分析作图


第六讲 R-数据正态分布检验


第七讲 R-相关性分析及作图


第八讲 R-单样本T检验


第九讲 R-单样本Wilcoxon检验


第十讲 R-两独立样本t检验


第十一讲 R-两独立样本Wilcoxon检验


第十二讲 R-配对样本t检验


第十三讲 R-配对样本Wilcoxon检验


第十四讲 R-单因素方差分析1


第十五讲 R-单因素方差分析2


第十六讲 R-双向方差分析1


第十七讲 R-双向方差分析2


第十八讲 R-多元方差分析




当然啦,R语言的掌握是在长期训练中慢慢积累的。一个人学习太累,不妨加入“R与统计交流群”,和数百位硕博一起学习。


快扫二维码撩客服,

带你进入投必得医学交流群,

让我们共同进步!

↓↓


- END -


长按二维码关注「投必得医学」,更多科研干货在等你!

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存